package com.example.venue_reservation_service.service;

import com.example.venue_reservation_service.domain.Reservation;
import com.baomidou.mybatisplus.extension.service.IService;
import com.example.venue_reservation_service.dto.*;
import com.example.venue_reservation_service.vo.Result;
import jakarta.servlet.http.HttpServletResponse;

/**
* @author 31586
* @description 针对表【venue_reservation】的数据库操作Service
* @createDate 2024-11-13 11:01:44
*/
public interface ReservationService extends IService<Reservation> {

    Result addReservation(RAddDTO dto);

    Result getReservations(ReservationDTO dto);

    Result cancelReservation(Integer reservationId);

    Result signInReservation(SignInDTO dto);

    Result queryDetail(Integer id);

    Result exportData(String time);

    void dealReservation(Integer reservationId);

    void exportExcel(HttpServletResponse response, Integer userId);

    Result removeBatch(DelDTO dto);

    Result removeSingle(Integer userId, Integer id);

    void exportPayments(HttpServletResponse response, String yearFilter);

    Result recommend(Integer userId);
}
